package org.springblade.modules.admin.dto;

import lombok.Data;

/**
 * @author Jackey
 * @date 2023年08月23日 10:18
 */
@Data
public class RobotContentDTO {

	/**
	 * 维保类型:1.保养 2.维修 3.救援
	 */
	private Integer maintainType;

	/**
	 * 维保子类型描述(中文,带上大括号)
	 */
	private String maintainSubTypeDesc;

	/**
	 * 位置信息(项目名-梯号,中文)
	 */
	private String locationDesc;

	/**
	 * 维保状态描述(中文)
	 */
	private String maintainStatusDesc;

	/**
	 * 电梯状态描述(中文)
	 */
	private String elevatorStatusDesc;

	/**
	 * 维保人员描述(带逗号分隔,中文)
	 */
	private String maintainPersonDesc;

	/**
	 * 维保人员头像描述(带逗号分隔,中文)
	 */
	private String maintainPersonImgDesc;

	/**
	 * 维保作业图片url
	 */
	private String maintainImgUrl;

	/**
	 * 维保时间描述(中文)
	 */
	private String maintainTimeDesc;

	/**
	 * 故障描述(中文)
	 */
	private String malfunctionDesc;

	/**
	 * 位置信息扩展(内部使用)
	 */
	private String locationDescExt;

	/**
	 * 维保时间描述扩展(内部使用)
	 */
	private String maintainTimeDescExt;

	public String getLocationDescExt() {
		if (this.maintainType == 2) {
			if ("【维修派单通知】".equals(this.maintainSubTypeDesc)) {
				return locationDesc + "，已派维修工单";
			} else if ("【开始维修通知】".equals(this.maintainSubTypeDesc)) {
				return locationDesc + "，已开始维修工单";
			} else if ("【维修到场通知】".equals(this.maintainSubTypeDesc)) {
				return locationDesc + "，维修人员已到场维修";
			} else if ("【维修退场通知】".equals(this.maintainSubTypeDesc)) {
				return locationDesc + "，维修人员已退场";
			} else if ("【维修完成通知】".equals(this.maintainSubTypeDesc)) {
				return locationDesc + "，维修已完成";
			} else {
				return locationDesc;
			}
		} else {
			if ("【开始保养通知】".equals(this.maintainSubTypeDesc)) {
				return locationDesc + "，已开始保养工单";
			} else if ("【保养到场通知】".equals(this.maintainSubTypeDesc)) {
				return locationDesc + "，维保员已到场保养";
			} else if ("【保养退场通知】".equals(this.maintainSubTypeDesc)) {
				return locationDesc + "，维保员已退场";
			} else {
				return locationDesc + "，维保员已完成保养";
			}
		}

	}

	public String getMaintainTimeDescExt() {
		if (this.maintainType == 2) {
			if ("【维修派单通知】".equals(this.maintainSubTypeDesc)) {
				return "维修时间：" + this.getMaintainTimeDesc();
			} else if ("【开始维修通知】".equals(this.maintainSubTypeDesc)) {
				return "预计恢复时间：" + this.getMaintainTimeDesc();
			} else if ("【维修到场通知】".equals(this.maintainSubTypeDesc)) {
				return "预计恢复时间：" + this.getMaintainTimeDesc();
			} else {
				return "";
			}
		} else {
			if ("【开始保养通知】".equals(this.maintainSubTypeDesc)) {
				return "预计保养时间：" + this.getMaintainTimeDesc();
			} else if ("【保养到场通知】".equals(this.maintainSubTypeDesc)) {
				return "预计保养时间：" + this.getMaintainTimeDesc();
			} else {
				return "";
			}
		}
	}
}
